/**
 * 
 */
package maquinaP;

/**
 * @author Miguel Ballesteros y Jose Antonio Blanes
 * Modelo de displays
 *
 */
public interface MaquinaP {
	
	//Funciones asociadas a la maquinap
	
	public boolean ejecuta() throws MaquinaPException;
	public void apila(Double n);
	public void apilaH();
	public void desapila();
	public void apila_ind() throws MaquinaPException;
	public void desapila_ind() throws MaquinaPException;
	public void suma() throws MaquinaPException;
	public void multiplica() throws MaquinaPException;
	public void resta() throws MaquinaPException;
	public void incrementa(int n) throws MaquinaPException;
	public void incrementaH(int n) throws MaquinaPException;
	public void llama(int etiqueta,int dif_niveles) throws MaquinaPException;
	public void mayor() throws MaquinaPException;
	public void mayorOIgual() throws MaquinaPException;
	public void menor() throws MaquinaPException;
	public void menorOIgual() throws MaquinaPException;
	public void igual() throws MaquinaPException;
	public void distinto() throws MaquinaPException;
	public void copia() throws MaquinaPException;
	public void escribe() throws MaquinaPException;
	public void ir_falso(int etiq) throws MaquinaPException;
	public void ir_a(int etiq) throws MaquinaPException;
	public void retorno(int nivel) throws MaquinaPException;
	public void divide() throws MaquinaPException;
	public void mod() throws MaquinaPException;
	public void and() throws MaquinaPException;
	public void or() throws MaquinaPException;
}
